package hcn.protocol.ods.inpatientServicesXML;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import java.io.Serializable;

/**
 * @Author:FangZhiyi
 * @Description 获取住院医嘱（XML格式入参）
 * @Data Created in 2020/11/14 14:47
 * @Moddified By:
 */
@XmlRootElement(name = "MsgBody")
public class DocAdviceListXMLReq implements Serializable {
    /*就诊摘要*/
    private Visit Visit;

    /*页码*/
    private String PageNo;
    /*每页条数*/
    private String PageSize;
    /*医嘱类型（1-全部医嘱/2在用医嘱）*/
    private String  QueryAdviceType;
    /*住院医嘱单*/
    private Advice Advice;
    @XmlElement(name = "Visit")
    public DocAdviceListXMLReq.Visit getVisit() {
        return Visit;
    }

    public void setVisit(DocAdviceListXMLReq.Visit visit) {
        Visit = visit;
    }

    @XmlElement(name = "PageNo")
    public String getPageNo() {
        return PageNo;
    }

    public void setPageNo(String pageNo) {
        PageNo = pageNo;
    }

    @XmlElement(name = "PageSize")
    public String getPageSize() {
        return PageSize;
    }

    public void setPageSize(String pageSize) {
        PageSize = pageSize;
    }

    @XmlElement(name = "QueryAdviceType")
    public String getQueryAdviceType() {
        return QueryAdviceType;
    }

    public void setQueryAdviceType(String queryAdviceType) {
        QueryAdviceType = queryAdviceType;
    }

    @XmlElement(name = "Advice")
    public DocAdviceListXMLReq.Advice getAdvice() {
        return Advice;
    }

    public void setAdvice(DocAdviceListXMLReq.Advice advice) {
        Advice = advice;
    }

    @XmlAccessorType(XmlAccessType.FIELD)
    public static  class Visit {
        /*医院ID，医院系统身份标识*/
        private String VisitOrganization;
        /*患者类型代码*/
        private String PatientType;
        /*住院号*/
        private String VisitId;
        /*医嘱类型（1-全部医嘱/2在用医嘱）*/
        private String QueryAdviceType;

        public String getVisitOrganization() {
            return VisitOrganization;
        }

        public void setVisitOrganization(String visitOrganization) {
            VisitOrganization = visitOrganization;
        }

        public String getPatientType() {
            return PatientType;
        }

        public void setPatientType(String patientType) {
            PatientType = patientType;
        }

        public String getVisitId() {
            return VisitId;
        }

        public void setVisitId(String visitId) {
            VisitId = visitId;
        }

        public String getQueryAdviceType() {
            return QueryAdviceType;
        }

        public void setQueryAdviceType(String queryAdviceType) {
            QueryAdviceType = queryAdviceType;
        }
    }

    @XmlAccessorType(XmlAccessType.FIELD)
    private static class Advice{
        /*医嘱单序号*/
        private String AdviceId;
        /*注册责任人标识*/
        private String PersonLiable;
        /*医嘱项目类型代码*/
        private String AdviceItemType;
        /*医嘱开立日期时间(起始)*/
        private String  AdviceOpenBeginDateTime;
        /*医嘱开立日期时间(截止)*/
        private String AdviceOpenEndDateTime;

        public String getAdviceId() {
            return AdviceId;
        }

        public void setAdviceId(String adviceId) {
            AdviceId = adviceId;
        }

        public String getPersonLiable() {
            return PersonLiable;
        }

        public void setPersonLiable(String personLiable) {
            PersonLiable = personLiable;
        }

        public String getAdviceItemType() {
            return AdviceItemType;
        }

        public void setAdviceItemType(String adviceItemType) {
            AdviceItemType = adviceItemType;
        }

        public String getAdviceOpenBeginDateTime() {
            return AdviceOpenBeginDateTime;
        }

        public void setAdviceOpenBeginDateTime(String adviceOpenBeginDateTime) {
            AdviceOpenBeginDateTime = adviceOpenBeginDateTime;
        }

        public String getAdviceOpenEndDateTime() {
            return AdviceOpenEndDateTime;
        }

        public void setAdviceOpenEndDateTime(String adviceOpenEndDateTime) {
            AdviceOpenEndDateTime = adviceOpenEndDateTime;
        }
    }


}
